Update status for std::optional LWG issues and fix an optional SFINAE bug git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284323 91177308-0d34-0410-b5e6-96231b3b80d8 
diff --git a/include/optional b/include/optional index 46252c7..c64aa8f 100644 --- a/include/optional +++ b/include/optional 
@@ -681,12 +681,14 @@  // LWG2756  template <class _Up = value_type,  class = enable_if_t - < - !is_same_v<_Up, optional> && - !(is_same_v<_Up, value_type> && is_scalar_v<value_type>) && - is_constructible_v<value_type, _Up> && - is_assignable_v<value_type&, _Up> - > + <__lazy_and< + integral_constant<bool, + !is_same_v<decay_t<_Up>, optional> && + !(is_same_v<_Up, value_type> && is_scalar_v<value_type>) + >, + is_constructible<value_type, _Up>, + is_assignable<value_type&, _Up> + >::value>  >  _LIBCPP_INLINE_VISIBILITY  optional&